home *** CD-ROM | disk | FTP | other *** search
Text File | 1996-03-20 | 3.0 KB | 96 lines | [TEXT/MPS ] |
- ;------------------------------------------------------------------------------
- ;
- ; FILENAME
- ; ChooserSupport.a
- ;
- ; DESCRIPTION
- ; Contains the code to form the first part of the Chooser 'PACK' for
- ; this driver.
- ;
- ; COPYRIGHT
- ; Copyright © 1995 Apple Computer, Inc.
- ; All rights reserved.
- ;
- ; Modification history
- ; 10/04/95 - David Hayward - Version 1.0.4 modified code so that
- ; the driver can be build under MPW,
- ; Metrowerks, and Symantec. In general,
- ; all that was required to do this was
- ; to add an inline-assembly jumptable
- ; and to store all globals off of the
- ; message manager instance context.
- ; Also made a few changes so that the
- ; driver can be rebuilt to support any
- ; resolution by changing the #defines
- ; kResolution and kPatStretch in
- ; "CommonDefines.h"
- ;
- ; 06/14/95 - Dave Hersey - Version 1.0.3 to fix a bug in
- ; CustomBufferingAndIO.c when creating
- ; high-res PICTs, and to make the size
- ; of buffers more flexible.
- ;
- ; 05/26/95 - Dave Hersey - Version 1.0.2 to add the new 'outp'
- ; desktop printer resource in NewApp.c.
- ;
- ; 05/03/95 - Dave Hersey - Version 1.0.1 to fix some minor bugs in
- ; CustomBufferingAndIO.c.
- ;
- ; 01/14/95 - Dave Hersey - Created from the shell of a hollowed-out
- ; ImageWriter driver.
- ;
- ;------------------------------------------------------------------------------
-
- STRING ASIS
- CASE OBJ
-
- kAppleTalkDevice EQU $80000000
- kIsPAPDevice EQU $40000000
- kIsPostScriptDevice EQU $20000000
- kMultiSelect EQU $10000000
- kLeftButton EQU $08000000
- kRightButton EQU $04000000
- kNoSavedZone EQU $02000000
- kActualZoneNames EQU $01000000
- kNoIntlChars EQU $00800000
- kEvenUpName EQU $00400000
- kLengthOnRename EQU $00200000
- kUsesOnAndOff EQU $00100000
- kNoSetSelfSend EQU $00080000
- kUnused18 EQU $00040000
- kAcceptsInit EQU $00020000
- kAcceptsNewSel EQU $00010000
- kAcceptsFillList EQU $00008000
- kAcceptsGetSel EQU $00004000
- kAcceptsSelect EQU $00002000
- kAcceptsDeselect EQU $00001000
- kAcceptsTerminate EQU $00000800
-
-
- IMPORT PACKMAIN ; our device routine (from ChooserPACK.c)
-
- ;--------------------------------------------------------------------------------
- ; This code must be kept in sync with the in-line assembly
- ; in ChooserPACK.c
- ;--------------------------------------------------------------------------------
-
- PACKENTRY PROC EXPORT
- BRA.S code ; branch to our actual code
- DC.W 169 ; device ID
- DC.L 'PACK' ; device type
- DC.W $F000 ; master ID for resources (-4096)
- DC.W 2 ; version
- DC.L kLeftButton+kUsesOnAndOff+kAcceptsInit+kAcceptsTerminate
-
- data:
- ds.b 38 ; sizeof(PACKglobalRec)
-
- code:
- MOVE.L (a7)+,a0 ; move return address into a0
- PEA data ; add a pointer to our global data onto stack as last parameter
- MOVE.L a0,-(a7) ; put the return address back on the stack
- jmp PACKMAIN ; jump to it, so when it does the return, it goes to OUR caller
- rts
-
- END
-